package issr.market.controller;

import issr.market.db.DBController;
import issr.market.db.impl.DBControllerImpl;
import issr.market.model.Indici;
import issr.market.model.Prodotto;
import issr.market.services.CalcoloIndici;

import java.util.ArrayList;
import java.util.List;

import org.apache.log4j.Logger;

public class AnalistaIndiciController extends AbstractController {

	/**
	 * 
	 */
	private static final long serialVersionUID = -2443068950863034498L;
	
	private static Logger logger = Logger.getLogger(AnalistaIndiciController.class);
	
	private List<Indici> indiciList;
	private int totaliImmagazzinati;

	@Override
	public String execute() {
		
		if(accessForbidden())
			return "login";
		
		
		
		logger.info("Inizializzo View per Analista Indici");
		DBController dbController = new DBControllerImpl();
		
		indiciList = new ArrayList<Indici>();
		List<Prodotto> prodottiList = dbController.getProdotti();
		
		totaliImmagazzinati = new DBControllerImpl().getTotaleImmagazzinati();
		
		logger.info("Immagazzinati totali "+totaliImmagazzinati);
		for(Prodotto prodotto : prodottiList){
			
			Indici indice = CalcoloIndici.calcoloIndici(prodotto, totaliImmagazzinati);
			indiciList.add(indice);
			
		}
		
		logger.info("indiciList size: "+indiciList.size());
		return "success";
	}

	public int getTotaliImmagazzinati() {
		return totaliImmagazzinati;
	}

	public void setTotaliImmagazzinati(int totaliImmagazzinati) {
		this.totaliImmagazzinati = totaliImmagazzinati;
	}

	public List<Indici> getIndiciList() {
		return indiciList;
	}

	public void setIndiciList(List<Indici> indiciList) {
		this.indiciList = indiciList;
	}
	
	
	
	

}
